<?php
namespace Pinenut\User\OAuth2;

use Pinenut\User\Auth\Model as AuthModel;

class Model extends AuthModel {
	
	static protected $_type = 'oauth2';
	
	/**
	 * идентификатор пользователя в системе
	 *
	 * @var string
	 */
	public $id;
	
	
	/**
	 * @var unknown
	 */
	public $accessToken;
	
	/**
	 * @var unknown
	 */
	public $accessTokenExpired;
	
	static function fields() {
		return array_merge ( parent::fields (), array (
				'id' => self::STRING,
				'accessToken' => self::STRING,
				'accessTokenExpired' => self::DATE,
		) );
	}
	

	/**
	 * проверяем - существует ли аккаунт с таким мылом
	 */
	function isExist() {
		return !!static::find()->where('id', $this->id)->count();
	}
	
	/**
	 * возвращаем уже существующую запись на основании заполненных в текущей полях
	 * @return Ambigous <NULL, \Pinenut\Model2, mixed>
	 */
	function auth() {
		return static::find()->where('id', $this->id)->active()->one();
	}
	
	
}